package com.li.onjava8.concurrent.es;

import com.li.onjava8.concurrent.es.task.CountingTask;

import java.util.stream.IntStream;

/**
 * @author li
 * @date 2023/10/30 14:41
 */
public class CountingStream {
    //我们可以使用并行Stream以更简单，更优雅的方式解决这个问题
    public static void main(String[] args) {
        Integer result = IntStream.range(0, 10)
                .parallel()
                .mapToObj(CountingTask::new)
                .map(ct -> ct.call())
                .reduce(0, Integer::sum);
        System.out.println(result);
    }
}
